// axios发起请求时，显示loading
// var vmload = []
// axios.interceptors.request.use((config) => {
//     if (vm) {
//         let i = vm.$loading({
//             fullscreen:false,
//             background:"#666666",
//             text:'加载中'
//         })
//         vmload.push(i)
//     }
//     return config
// }, (err) => {
//     return Promise.reject(err)
// })
// // axios请求完成后，隐藏loading
// axios.interceptors.response.use((response) => {
//     vmload.forEach(item=>{
//         item.close()
//     })
//     return response
// }, (err) => {
//     return Promise.reject(err)
// })
var Api = {
    request(url,data = {},header = {}) {
        return new Promise((resolve,reject)=>{
            axios({
                method:'post',
                url:url,
                data:data,
                headers:header
            }).then(res=>{
                if (res.status === 200) {
                    if (res.data.code === 1) {
                        resolve(res.data)
                    } else {
                        if (typeof vm !== "undefined") {
                            vm.showErrorMsg(res.data.msg)
                        } else {
                            showErrMsg(res.data.msg)
                        }
                        reject(res.data.msg)
                    }
                } else {
                    if (vm) {
                        vm.showErrorMsg(res.data.msg)
                    } else {
                        showErrMsg('错误')
                    }
                }
            }).catch(err=>{
                console.log(err)
                reject(err)
            })
        })
    },
    get(url, data) {
        return new Promise((resolve, reject) => {
            axios({
                method: 'get',
                url,
                params: data,
            }).then(res => {
                if (res.status === 200) {
                    if (res.data.code === 1) {
                        resolve(res.data)
                    } else {
                        vm.showErrorMsg(res.data.msg)
                        reject(res.data.msg)
                        console.log('111',res)
                    }
                } else {
                    vm.showErrorMsg('错误')
                }
            }).catch(err => {
                reject(err)
            })
        })
    },
    my(url,data = {},header = {}) {
        var load = layer.load(1,{
            shade: [0.1,"#000"]
        });
        return new Promise((resolve,reject)=>{
            axios({
                method:'post',
                url:url,
                data:data,
                headers:header
            }).then(res=>{
                if (res.status === 200) {
                    resolve(res.data)
                } else {
                    showErrMsg('错误')
                }
            }).catch(err=>{
                console.log(err)
                reject(err)
            }).finally(res=>{
                layer.close(load)
            })
        })
    }

}